Numerical control system for controlling simultaneously a plurality of tools of one or more machine tools

ABSTRACT

A system for the numerical control of a plurality of machine tool positioning units by a single instruction program, comprising a reading unit which reads program data comprising addresses and numerical data from a record member and issue the data in succession at an output, and a plurality of positioning units connected to receive data from the output. Each positioning unit is adapted to recognise its own address among the addresses which appear at the output and to enable a corresponding input for the reception of numerical data following the address. Each positioning unit is also able to operate during the reading of the addresses and numerical data following and/or concerning the other positioning units.

United States Patent Pomella et a1.

NUMERICAL CONTROL SYSTEM FOR CONTROLLING SIMULTANEOUSLY A PLURALITY OFTOOLS OF ONE OR MORE MACHINE TOOLS Piero Pomella; Luciano Laura, both ofIvrea, ltaly Inventors:

Assignee:

Filed:

Appl. No.

lng.

C. Olivetti & C., S.p.A., Ivrea (Turin), Italy Sept. 21, 1972 ForeignApplication Priority Data Sept 30, 1971 Italy 70210111 References CitedUNITED STATES PATENTS Mynall 318/562 X McGee 340/1725 I TRANS ADO.

REG,

Primary ExaminerGareth D. Shaw Assistant ExaminerMelvin B. Chapnick [57]ABSTRACT A system for the numerical control of a plurality of machinetool positioning units by a single instruction program, comprising areading unit which reads program data comprising addresses and numericaldata from a record member and issue the data in succession at an output,and a plurality of positioning units connected to receive data from theoutput. Each positioning unit is adapted to recognise its own addressamong the addresses which appear at the output and to enable acorresponding input for the reception of numerical data following theaddress. Each positioning unit is also able to operate during thereading of the addresses and numerical data following and/or concerningthe other positioning units.

3 Claims, 3 Drawing Figures REAlJiNG UNlTl POSITIONING UNlT L'IMENSIONREGISTER NUMERICAL CONTROL SYSTEM FOR CONTROLLING SIMULTANEOUSLY APLURALITY OF TOOLS OF ONE OR MORE MACHINE TOOLS BACKGROUND OF THEINVENTION The present invention relates to a numerical control systemadapted to control simultaneously a plurality of tools of one or moremachine tools, or to command a tool along more than one co-ordinateaxis, on the basis of instructions contained in a program recorded onpunched or magnetic tape or other record member.

Prior art numerical control systems are capable of controlling a singlepositioning unit associated with a single tool, the positioning unitbeing permanently connected to a tape reader to control a toolsequentially along one axis after another.

Heretofore, it has been possible to effect the simultaneous execution ofa plurality of operations on a part or workpiece to be machined, forexample turning operations effected simultaneously in two zones of aworkpiece, or the simultaneous boring of two or more holes by means of amultiple boring machine, etc., only with machines programmed by means ofcams, pegs and such devices. These simultaneous multiple operations havetherefore been convenient from the economic point of view only in thecase of massproduction machining operations such as to justify the costof the initial tooling-up.

In the case of machining operations carried out on small runs, in whichthe use of numerical control programs is imposed from the point of viewof the cost, it has heretofore been necessary to carry out theindividual operations in succession, with considerable lengthening ofthe over-all machining time.

The invention therefore seeks to solve the problem of simultaneouscontrol of a plurality of positioning units by means of a single readingunit for the record member, permitting the simultaneous operation of thecontrolled positioning units on the basis of the instructions suppliedindividually to each by the reading unit.

The system of the invention moreoever permits the production of modularinstallations, which allow of gradually increasing capabilities, forexample the number of axes or tools controlled by one reading unit, bythe addition of successive modular units to a basic installation.

SUMMARY OF THE INVENTION According to the present invention there isprovided a system for the numerical control of a plurality of machinetool positioning units by a single instruction program, comprising areading unit adapted to read and decode program data comprisingaddresses and numbers from a record member and to issue the data insuccession at an output, and a plurality of positioning units connectedto receive data from the said output, each positioning unit beingadapted to recognise its own address among the addresses which appear atthe said output and to enable a corresponding input for the reception ofnumeric data following the said address, and being able to operateduring the reading of the addresses and numbers following and/orconcerning the other positioning units.

BRIEF DESCRIPTION OF THE DRAWINGS The invention will now be described inmore detail, by way of example, with reference to the accompanyingdrawings, wherein:

FIG. 1 is a general block diagram ofa numerical control systemcomprising a plurality of positoning units controlled by a singlereading unit;

FIG. 2 is a flow diagram illustrating the working pro- 0 cess of asystem according to FIG. I; and

FIG. 3 is a more detailed diagram of part of the system of FIG. 1.

DESCRIPTION OF THE PREFERRED EMBODIMENT In FIG. I, a reading unit 10 isconnected to control three positioning units l2, l4 and 16,respectively, for example for three groups of tool slides of amulti-tool lathe. Each of the positioning units is of known type adaptedto command sequentially a maximum of four axes and is, for example, ofthe type described in the applicants US. Pat. application Ser. No.l84,678 filed Sept. 29, 1971 now US. Pat. No. 3,75l ,651. The readingunit 10 also controls an electric control unit 18 for the execution ofauxiliary functions.

The reading unit 10 reads data from a program recorded, for example, oneight-channel punched tape (not shown), for example in InternationalStandard Or ganization (ISO) code. The program comprises, in knownmanner, designations of axes of movement of the controlled tool,followed by positioning dimensions for the tool itself comprising amaximum of either digits: moreover, the program comprises instructionsfor auxiliary functions, such as rate of feed, etc., which areconstituted by an auxiliary function code and a twodigit number. Theunits of measurement employed, the nature of the auxiliary functions,etc., are of no relevance in the present invention and will not beconsidered further.

The reading unit 10 emits the data read from the program in successionin parallel form on a single multiwire output 20. From the output 20 ofthe reading unit the data are applied to the respective inputs 22, 24,26 of the positioning units l2, l4, 16. Moreover, the reading unit 10emits auxiliary function instructions on an output 28 connected to theelectric control unit 18.

Each item of data is emitted by the reading unit 10 on the output 20 inthe form of 4 bits on respective lines. The output 20 moreover comprisesa designation line for a signal EN which is normally at level 0 andassumes the level 1 when the data emitted by the reading unit 10 is anaddress. Two more lines connecting the unit 10 to the positoning unitsserve for sending signals of consent (PP) to the transmission of anumber or di' mension and signals (TF8) for timing the extraction of thenumber from the reading unit to the positioning units, respectively, aswill be seen hereinafter.

The flow diagram of FIG. 2 illustrates in simplified manner the sequenceof the operations carried out by the reader and positioning unitssystem.

In the block 30 there is carried out the reading of an item of data onthe punched tape which is initiated on the starting of the program bythe operator by means of a push button (block 32). The data read issubjected axis address or designation, it will have to be transcoded andstaticized and rendered available on the output 20 in FIG. I, togetherwith a designation signal EN, which prepares the positioning units forthe reception of an address (block 38). In the block 40, eachpositioning unit decodes the address emitted by the reader to recognisewhether it belongs to it. In the affirmative case and if the positioningunit is ready to receive the dimension, it emits a signal (PP) ofconsent and thereby requests the extraction of the dimension from thecorresponding register of the reader 10 and loads the dimension into theregister associated with the addressed axis (block 42). In the negativecase, the positioning unit in question does not emit a request, whichwill be emitted, on the other hand, by another positioning unit whichhas recognised the address as its own (block 44).

If the data decoded in the block 34 does not prove to be an address, buta numerical quantity (block 36), this may be a dimension, if the numberfollows an address in the program, or of the specification of anauxiliary function, if the number follows an auxiliary function code.Therefore, a check is made in the block 46 as to whether there is anaddress staticized in the reader. In the affirmative case, the number isloaded as a dimension into the respective register (block 48) of thereading unit. If there is no staticized address, the number is routed toa register associated with the auxiliary functions (block 50), afterwhich the reading is stopped (block 52).

From the block 48 appertaining to the loading of a number into thedimension register, the following step of the program is the emission ofthe dimension as output from the reading unit (block 54) for storage bya positioning unit. This operation is conditional on the existence(block 56) of a constant signal (PP) from a positoning unit (block 42),and is followed by a consent to the advance of the reading.

If, in the block 56, there does not prove to be a request for dimensiondata, after a check that a further address or auxiliary function hasbeen read (block 58) provision is made for stopping the reading,Otherwise, the advance of the reading is confirmed.

When an item of data is not an address or a number, but an auxiliaryfunction code, it is staticized in an auxiliary function store (block60), which sends the code to the electric control unit 18 of the machinetool. If the machine tool is not ready to receive instruction inrelation to the staticized auxiliary function (block 62), the reading isstopped. If, or when, the machine tool is ready, the reading is causedto advance.

It is therefore clear that the reading unit can send a given instructionimmediately after the preceding one has been accepted by a positioningunit, as a result of which the positioning of the various axes and toolscan take place during the operation of a tool. In this way, therefore,the tools are controlled alternately in such manner as to be able towork substantially simultaneously.

The flow diagram described is simplified, inasmuch as it does notinclude parity, format, etc., checks normally obtaining in numericalcontrol systems, nor does it provide for program errors, services,protections, etc. On the other hand, it describes the essentialprocessing stages which are at the root of the invention. Moreover, thehandling of the instructions concerning auxiliary functions, which doesnot substantially concern the invention, has been described only in itsinteraction with the rest of the carrying out of operation.

The system of the invention will now be described in greater detail withreference to FIG. 3. FIG. 3 shows in essence the operative portion ofthe reading unit 10 of FIG. 1 and an input portion ofa positioning unitforming part of an assembly of positioning units (three at the most)which are connected to the output of the reading unit.

A reading device of any suitable known type reads data from a punchedtape (not illustrated) in ISO code and emits the same on aneight-channel output 102. The data present on the output 102 is decodedin a decoding matrix I04, for example of the diode type, whichrecognizes whether the incoming data is an address and applies it insuch case on twelve lines 106 to a flip-flop register I08,simultaneously emitting a signal ORI, which indicates the existence ofan address at the input of the register 108. The lines 106 connectingthe decoding matrix 104 to the register I08 are constituted by bridginglinks (not shown in the drawing) to allow, in known manner, thearbitrary allocation of the designations to the various controlled axes.

The signal OR] generated by the decoding matrix 104 enables the register108, causing the staticization of the decoded address therein. Theregister 108, in turn, emits a signal IND to indicate that there is astaticized address.

The l2line output I10 of the register 108 extends to a transcoding andstaticization circuit 112 also comprising, for example, a diode matrixand a flip-flop register, which circuit transcodes the address from l2lines to four lines, staticizing it and emitting a designation emissionsignal EN, which enables a gate I14 for the emission of the staticizedaddress at the output 20 of the reading unit.

The four bits of the address emitted at the output 20 of the readingunit comprise 2 bits for designation of the positioning unit and 2 bitsfor designation of the axis in a particular positioning unit. While thetwo axis bits may assume any one whatsoever of the four possibleconfigurations, in order to designate in this way four axes for eachpositioning unit, the two bits for designation of the positioning unitmay assure only three significant configurations, the configuration 00being eliminated, and are therefore able to distinguish only threepositioning units.

The decoding matrix 104 is also able to recognise whether the data readis a number, generating in such case a signal ORN indicating that thedata present at the output of the reading device 100 is a number. Inthis case, as known, in the ISO code the four least significant channelsof the punched tape represent the decoded data, that is in binary codeddecimal. Therefore, the four least significant channels are applied tothe input of a shift register 116 through a gate 118 enabled by thepresence of the signals ORN and IND, in addition to a signal Fm, thesignificance of which will be described hereinafter.

The shift register 116 is able to receive eight characters, whichcorrespond to the maximum length (eight decimal digits) of a numericdimension datum, and is provided with a loop "9 for the recirculation ofthe data under the control of timing pulses TL, with the consent of asignal FF acting on a gate 120 which is described hereinafter.

A gate 122 is adapted to permit the emission of the numeric data storedin the register 116 at the output of the reading unitlhis emission isenabled by the presence of a signal EN indicating that the reading unitis not emitting an address, and moreover by the signal PP describedhereinafter.

The data issuing from the reading device 100 is also applied, apart fromto the address decoding matrix 104, to an auxiliary functions decodingmatrix I24, which is adapted to recognise an auxiliary function code,staticizing it in a flip-flop store (not separately shown) and emittinga signal FAU. The signal FAU enables, for the duration of two digits,together with the signal ORN, a gate 126 for the input of a possiblyfollowing numeric datum into a register 128. As already described forthe numeric dimension data, the four least significant channels of theoutput 102 of the reading device are also selected in this case. Thesubsequent utilization of the auxiliary function codes and numeric data,which are sent to the electric control unit 18 of the machine toolseparately from the other data, will not be further described inasmuchas it does not form part of the invention.

The signal FAU emitted by the auxiliary functions decoding matrix 124enables the significance of the numbers emitted by the reading device100 to be distinguished. The numbers are in fact all recognised by theaddress decoding matrix 104, which in this case sends its own signal ORNboth to the gate 118 and to the gate 126. The latter gate, however, alsocalls for the presence of confirmation that the number is associatedwith an auxiliary function (FAU), while the gate 118 calls for thepresence of FAU and of IND.

The output 20 of the reading unit, as can be seen in FIG. 1, isconnected to the inputs of a plurality of positioning units; only one ofthese is shown partially in FIG. 3. it comprises an input gate 130 to adecoding matrix 132 and a plurality of dimension registers 136 (only oneof which is shown), each corresponding to a different controlled axis,which registers can have data entered therein through respective gates134. The gate 130 is enabled by the signal EN, indicating that theoutput data at the moment is an axis designation or address, and by asignal AP generated by means (not shown) included in the known part ofthe positioning unit, and indicating that the tool is in a readyposition, that is, that it has been mounted correctly and that thepossible preceding instruction has been executed. If the decoding matrix132 recognises the address received as its own, it emits for the readingunit a positioning-unit ready signal PP, which is also conditioned bythere having been performed the functions commanded by the register 128and a signal TF8 constituted by a sequence of eight timing pulses, equalto the number of digits making up a dimension. Both these signals aresent to the reading unit. Moreover, the decoding matrix 132 emits asignal DAl designating the first axis, which enables the gate 134 forthe input into the axis dimension registers 136 of the numeric datathereafter applied to the output 20 of the reading unit. The matrix 132is adapted to generate one or more signals DA], DAZ, for each of thedimension registers 136, each associated with a different axis. 124

The signal PP, passing to level 1, gives consent to the opening of thegate 122 for the extraction of the data stored in the register 116, 119,while passage to the level 0 of the signal PP interrupts therecirculation of the datum in the register 116, as a result of which thedata is transferred to the re ister 136.

Thus, the signals PP and P respectively enable two gates 138, 140, theoutputs of which control in an OR function the timing of the shiftregister 116. During the presence of the signal PP, the gate 138introduces the train of timing pulses TPB sent by the positioning unit,to synchronize the register 116, "9 with the elements of the positioningunit during the extraction of the data. The gate 140 enables theregister I16, 119 to be timed, on the other hand, by the timing pulsesTL of the reading unit in the remainder of the time. This is a veryimportant characteristic of the preferred embodiment of the invention,which permits independent operation of the reading unit and thepositioning units in any instant except during the transfers ofdimensions. in particular, it enables the same control unit to beadapted to any data positioning system.

In the description there have not been indicated ei ther the timings, itbeing understood that the reading unit and each positioning unit areeach provided with independent timing, or the generation of the signalsfor advance or arrest of the reading, inasmuch as this does not presentproblems with respect to the known case of a reading unit placed incontrol of a single positioning unit. However, in this case, the advancesignals may come from any positioning unit immediately after the storingof the data in the respective register 136.

What we claim is:

1. A system for the numerical control of a plurality of machine toolpositioning units by a single program, said program including addressesand numerical data, said system comprising:

a reading unit including:

reading means for reading a program from a recording medium;

means connected to said reading means for distinguishing betweenaddresses and numerical data read by said reading means;

first storage means responsive to the sensing by said distinguishingmeans of an address for storing said address, said first storage meansinclud ing means for indicating the presence of an address storedtherein;

second storage means responsive to the sensing of numerical data by saiddistinguishing means for receiving and storing said numerical data;

a plurality of positioning units connected to the reading unit eachincluding:

decoding means responsive to the indication by said indicating means ofan address in said first storage means for decoding said address todetermine if it addresses that positioning unit;

a plurality of registers each for controlling the operation of thepositioning unit along an axis of movement, said decoding meansincluding means responsive to the decoding of the address of thatpositioning unit for enabling a selected one of said registers forreceiving the data stored in said second storage means.

2. The system of claim 1 wherein said numerical data follows the addressassociated therewith on said recording medium and wherein said secondstorage means includes a shift register for storing said numerical data,said shift register being controlled by timing pulses from said readingunit during the transfer of nu merical data from said recording mediumto said shift the sensing of an address by said distinguishing means forreceiving and storing said address and transcoding and storage means fortranscoding and storing the address stored in said first storageregister.

#0 k II

1. A system for the numerical control of a plurality of machine toolpositioning units by a single program, said program incluDing addressesand numerical data, said system comprising: a reading unit including:reading means for reading a program from a recording medium; meansconnected to said reading means for distinguishing between addresses andnumerical data read by said reading means; first storage meansresponsive to the sensing by said distinguishing means of an address forstoring said address, said first storage means including means forindicating the presence of an address stored therein; second storagemeans responsive to the sensing of numerical data by said distinguishingmeans for receiving and storing said numerical data; a plurality ofpositioning units connected to the reading unit each including: decodingmeans responsive to the indication by said indicating means of anaddress in said first storage means for decoding said address todetermine if it addresses that positioning unit; a plurality ofregisters each for controlling the operation of the positioning unitalong an axis of movement, said decoding means including meansresponsive to the decoding of the address of that positioning unit forenabling a selected one of said registers for receiving the data storedin said second storage means.
 2. The system of claim 1 wherein saidnumerical data follows the address associated therewith on saidrecording medium and wherein said second storage means includes a shiftregister for storing said numerical data, said shift register beingcontrolled by timing pulses from said reading unit during the transferof numerical data from said recording medium to said shift register andby timing pulses from the addressed positioning unit during the transferof said numerical data from said shift register to said addressedpositioning unit.
 3. The system of claim 1 wherein said first storagemeans includes a first storage register responsive to the sensing of anaddress by said distinguishing means for receiving and storing saidaddress and transcoding and storage means for transcoding and storingthe address stored in said first storage register.